package com.fita.entity.authority;

import com.demo2do.core.utils.Alias;

import java.util.Arrays;
import java.util.List;

/**
 * 角色模板
 * 
 * @author Ysy
 *
 */
@Alias("roleTemplate")
public enum RoleTemplate {

    ADMIN_USER("系统管理员", "系统管理员"),
    
    SALE_DIRECTOR("销售主管", "销售主管"),
    
    SALE_USER("销售人员", "销售人员"),
    
    FINANCE_USER("财务管理", "财务管理");

    private String name;
    
    private String description;
    
    /**
     * 
     * @param name
     * @param description
     */
    private RoleTemplate(String name, String description) {
        this.name = name;
        this.description = description;
    }

    /**
     * 获取销售
     * @return
     */
    public static List<RoleTemplate> getSalerRoleTemplates(){
        return Arrays.asList(RoleTemplate.SALE_DIRECTOR, RoleTemplate.SALE_USER);
    }

    /**
     * 
     * @param ordinal
     * @return
     */
    public static RoleTemplate ordinalOf(int ordinal) {
        for(RoleTemplate roleTemplate : RoleTemplate.values()){
            if(roleTemplate.ordinal() == ordinal)
                return roleTemplate;
        }
        return null;
    }
    
    /**
     * 
     * @return
     */
    public int getOrdinal(){
        return this.ordinal();
    }
    
    /**
     * @return the name
     */
    public String getName() {
        return name;
    }

    /**
     * @return the description
     */
    public String getDescription() {
        return description;
    }
    
}